//
//	GetResumeByUserIdSkillList.m
//	Model file generated using JSONExport: https://github.com/Ahmed-Ali/JSONExport



#import "GetResumeByUserIdSkillList.h"

NSString *const kGetResumeByUserIdSkillListAppUserId = @"appUserId";
NSString *const kGetResumeByUserIdSkillListIdField = @"id";
NSString *const kGetResumeByUserIdSkillListSkillName = @"skillName";
NSString *const kGetResumeByUserIdSkillListSkillProficiency = @"skillProficiency";

@interface GetResumeByUserIdSkillList ()
@end
@implementation GetResumeByUserIdSkillList




/**
 * Instantiate the instance using the passed dictionary values to set the properties values
 */

-(instancetype)initWithDictionary:(NSDictionary *)dictionary
{
	self = [super init];
	if(![dictionary[kGetResumeByUserIdSkillListAppUserId] isKindOfClass:[NSNull class]]){
		self.appUserId = [dictionary[kGetResumeByUserIdSkillListAppUserId] integerValue];
	}

	if(![dictionary[kGetResumeByUserIdSkillListIdField] isKindOfClass:[NSNull class]]){
		self.idField = [dictionary[kGetResumeByUserIdSkillListIdField] integerValue];
	}

	if(![dictionary[kGetResumeByUserIdSkillListSkillName] isKindOfClass:[NSNull class]]){
		self.skillName = dictionary[kGetResumeByUserIdSkillListSkillName];
	}	
	if(![dictionary[kGetResumeByUserIdSkillListSkillProficiency] isKindOfClass:[NSNull class]]){
		self.skillProficiency = [dictionary[kGetResumeByUserIdSkillListSkillProficiency] integerValue];
	}

	return self;
}


/**
 * Returns all the available property values in the form of NSDictionary object where the key is the approperiate json key and the value is the value of the corresponding property
 */
-(NSDictionary *)toDictionary
{
	NSMutableDictionary * dictionary = [NSMutableDictionary dictionary];
	dictionary[kGetResumeByUserIdSkillListAppUserId] = @(self.appUserId);
	dictionary[kGetResumeByUserIdSkillListIdField] = @(self.idField);
	if(self.skillName != nil){
		dictionary[kGetResumeByUserIdSkillListSkillName] = self.skillName;
	}
	dictionary[kGetResumeByUserIdSkillListSkillProficiency] = @(self.skillProficiency);
	return dictionary;

}

/**
 * Implementation of NSCoding encoding method
 */
/**
 * Returns all the available property values in the form of NSDictionary object where the key is the approperiate json key and the value is the value of the corresponding property
 */
- (void)encodeWithCoder:(NSCoder *)aCoder
{
	[aCoder encodeObject:@(self.appUserId) forKey:kGetResumeByUserIdSkillListAppUserId];	[aCoder encodeObject:@(self.idField) forKey:kGetResumeByUserIdSkillListIdField];	if(self.skillName != nil){
		[aCoder encodeObject:self.skillName forKey:kGetResumeByUserIdSkillListSkillName];
	}
	[aCoder encodeObject:@(self.skillProficiency) forKey:kGetResumeByUserIdSkillListSkillProficiency];
}

/**
 * Implementation of NSCoding initWithCoder: method
 */
- (instancetype)initWithCoder:(NSCoder *)aDecoder
{
	self = [super init];
	self.appUserId = [[aDecoder decodeObjectForKey:kGetResumeByUserIdSkillListAppUserId] integerValue];
	self.idField = [[aDecoder decodeObjectForKey:kGetResumeByUserIdSkillListIdField] integerValue];
	self.skillName = [aDecoder decodeObjectForKey:kGetResumeByUserIdSkillListSkillName];
	self.skillProficiency = [[aDecoder decodeObjectForKey:kGetResumeByUserIdSkillListSkillProficiency] integerValue];
	return self;

}

/**
 * Implementation of NSCopying copyWithZone: method
 */
- (instancetype)copyWithZone:(NSZone *)zone
{
	GetResumeByUserIdSkillList *copy = [GetResumeByUserIdSkillList new];

	copy.appUserId = self.appUserId;
	copy.idField = self.idField;
	copy.skillName = [self.skillName copyWithZone:zone];
	copy.skillProficiency = self.skillProficiency;

	return copy;
}
@end